layui.use([ 'table', 'layer', 'form','laydate' ], function() {
	var $ = layui.jquery
	,table = layui.table
	,layer = layui.layer
	,form = layui.form
	,laydate = layui.laydate;
	
	var layerAdd;
	var layerEdit;
	var layerNode;
	var formdata;
	var ltypeid='';
	var datathingid="";
	//设置unit类型
	var unittype=1;
	var unittypeac=2;

	// 获取type1的unit列表
	getunitlist(1,"#unita");
	getunitlist(2,"#unitb");
	getunitlist(2,"#unitb2");
	getunitlist(2,"#unitidc");
	
	table.render({
		id : 'idTable',
		elem : '#test',
		url : '/workflow/thingManager/selectthingpagelist', // 数据接口
		method : "post",
		page :true,
		height : 450,
		cols : [ [ // 表头
		{
			field : 'thingid',
			title : 'ID',
			type:'numbers',
			fixed : 'left'
		}, {
			field : 'name',
			title : '事项名'
		},  {
			field : 'bname',
			title : '姓名'
		},{
			field : 'bphone',
			title : '联系电话'
		}, {
			field : 'number',
			width:80,
			title : '数量'
		},{
			field : 'sendunit',
			width:80,
			title : '交件单位'
		}, {
			field : 'signatureS',
			width:80,
			title : '交件人签名',
			templet: '<div><img src="{{d.signatureS}}" ></div>'
		},{
			field : 'typeid',
			title : '办理类型',
			templet : function(d) {
				if (d.typeid==1) {
					return '代办'
				} else if(d.typeid==2){
					return '代收'
				}else if (d.typeid==3) {
					return '代发'
				}else if (d.typeid==4) {
					return '一体化救助平台'
				}
			}
		},{
			field : 'status',
			title : '办理状态',
			templet : function(d) {
				if ((d.typeid==2||d.typeid==4||d.typeid==1)&&d.status==1) {
					return '社区已交件'
				} else if((d.typeid==2||d.typeid==4||d.typeid==1)&&d.status==2){
					return '部门已接件'
				}else if (d.status==3) {
					return '部门已办结'
				}else if (d.status==4) {
					return '返件-部门已交件'
				}else if (d.status==5) {
					return '返件-社区已接件'
				}else if (d.status==6) {
					return '退件-部门已交件'
				}else if (d.status==7) {
					return '退件-社区已接件'
				}else if (d.status==8) {
					return '部门已交件'
				}else if (d.status==9) {
					return '社区已接件'
				}
			}
		}, {
			fixed : 'right',
			width:330,
			title : '操作',
			field : 'rags',
			align : 'left',
			toolbar : '#barDemo'
		} ] ]
	});
	function ontableRender() {
		var bname=$("#bname").val();
		var bphone=$("#bphone").val();
		var Tname=$("#Tname").val();
		var typeid=$("#typeid").val();
		var status=$("#status").val();
		var startDate=$("#startDate").val();
		var endDate=$("#endDate").val();
		var unitidc=$("#unitidc").val();
		table.reload('idTable', {
			url : "/workflow/thingManager/selectthingpagelist",
			where : {
				thingname:Tname,
				bname:bname,
				bphone:bphone,
				typeid:typeid,
				status:status,
				startDate:startDate,
				endDate:endDate,
				unitidc:unitidc
			}
		});
	}
	
	$('#exportExcel').on("click",function(){
		var tableData = table.cache.idTable;
		var ids = new Array();
		for(var i =0; i < tableData.length; i++){
			ids.push(tableData[i].thingid);
		}
		window.location.href = "/workflow/thingManager/excel?ids=" + ids.join(",");
	});

	function openlayer() {
		var value = layer.open({
			type : 1,
			title : "新增事项", // 标题栏
			closeBtn : 1,
			area : '800px',
			shade : 0.5,
			// id : 'layer'+butName, // 设定一个id，防止重复弹出
			btnAlign : 'r',
			offset:'t',
			content : $("#formI"),
			success : function(layero, index) {
				$("#formI").removeClass("layui-hide");
				//$("#butSubmit").attr("lay-filter", butName);
				
			},
			end : function(index, layero) {
				$("#formI").addClass("layui-hide");
				// 重置表单
				$("#formI")[0].reset();
			}

		});
		return value;
	}
	
	function openlayer2() {
		var value = layer.open({
			type : 1,
			title : "下一步", // 标题栏
			closeBtn : 1,
			area : '800px',
			shade : 0.5,
			// id : 'layer'+butName, // 设定一个id，防止重复弹出
			btnAlign : 'r',
			offset:'t',
			content : $("#formI2"),
			success : function(layero, index) {
				$("#formI2").removeClass("layui-hide");
				//$("#butSubmit2").attr("lay-filter", butName);
			},
			end : function(index, layero) {
				$("#formI2").addClass("layui-hide");
				$("#statusNext").empty();
				// 重置表单
				$("#formI2")[0].reset();
				//刷新表单视图
				form.render();
			}

		});
		return value;
	}
	
	function openlayer3(phone,thindId) {
		var value = layer.open({
			type : 1,
			title : "发送短信", // 标题栏
			closeBtn : 1,
			area : '800px',
			shade : 0.5,
			btnAlign : 'r',
			offset:'t',
			content : $("#formI3"),
			success : function(layero, index) {
				$("#thingId").val(thindId);
				$("#phone").val(phone);
				$("#formI3").removeClass("layui-hide");
				$("#butSubmit5").attr("lay-filter", "node");
			},
			end : function(index, layero) {
				$("#formI3").addClass("layui-hide");
				// 重置表单
				$("#formI3")[0].reset();
				//刷新表单视图
				form.render();
			}

		});
		return value;
	}
	
	function openlayer4(type) {
		var value = layer.open({
			type : 2,
			title : "签名", // 标题栏
			closeBtn : 1,
			area: ['700px', '350px'],
			shade : 0.5,
			btnAlign : 'r',
			offset:'t',
			content : "/workflow/userManager/signature?id="+type,
			success : function(layero, index) {
				
			},
			end : function(index, layero) {
				ontableRender();
			}

		});
		return value;
	}
	
	function openlayer5(phone,thingId) {
		console.log(phone);
		var url = "/workflow/thingManager/chatdetail?phone=" + phone + "&thingId=" + thingId;
		console.log(url);
		var value = layer.open({
			type : 2,
			title : "短信记录", // 标题栏
			closeBtn : 1,
			area: ['800px', '600px'],
			shade : 0.5,
			btnAlign : 'r',
			offset:'t',
			content : url,
			success : function(layero, index) {
			},
			end : function(index, layero) {
				
			}
		});
		return value;
	}
	function openlayer6(thingId) {
		var url = "/workflow/thingManager/listhistory?thingid=" + thingId;
		var value = layer.open({
			type : 2,
			title : "历史记录", // 标题栏
			closeBtn : 1,
			area: ['800px', '600px'],
			shade : 0.5,
			btnAlign : 'r',
			offset:'t',
			content : url,
			success : function(layero, index) {
				
			},
			end : function(index, layero) {
				
			}
		});
		return value;
	}
	// 用户名验证
	form.verify({
		username : function(value, item) { // value：表单的值、item：表单的DOM对象
			if (!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)) {
				return '用户名不能有特殊字符';
			}
			if (/(^\_)|(\__)|(\_+$)/.test(value)) {
				return '用户名首尾不能出现下划线\'_\'';
			}
			if (/^\d+\d+\d$/.test(value)) {
				return '用户名不能全为数字';
			}
			if (!/^[\S]{2,6}$/.test(value)) {
				return '只能为2-6位字符';
			}
		}

		// 我们既支持上述函数式的方式，也支持下述数组的形式
		// 数组的两个值分别代表：[正则匹配、匹配不符时的提示文字]
		,
		pass : [ /^[\S]{7,12}$/, '密码必须6到12位，且不能出现空格' ]
	});
	//直接提交add
	form.on('submit(direct)', function(data) {
			
			formdata = data.field;
			formdata.thingid=datathingid;
			console.log(formdata);
			$.ajax({
				url : "/workflow/thingManager/inserthingok",
				type : "post",
				data : formdata,
				success : function(data) {
					if(data.success){
						// 渲染表格
						ontableRender();
					}else{
						layer.msg(data.message);
					}
				}
			});
	});
	//发送短信
	form.on('submit(node)', function(data) {
		
		formdata = data.field;
		$.ajax({
			url : "/workflow/thingManager/sendSms",
			type : "post",
			data : formdata,
			success : function(data) {
				if(data.success){
					layer.msg("短信发送成功！");
					// 渲染表格
					ontableRender();
				}else{
					layer.msg(data.message);
				}
			}
		});
		// 重置表单
		$("#formI3")[0].reset();
		$("#formI2")[0].reset();
		$("#formI")[0].reset();
		// 关闭模态框
		layer.close(layerEdit);
		layer.close(layerAdd);
		layer.close(layerNode);
		return false;
	});
	//直接提交2
	form.on('submit(direct2)', function(data) {
		
		formdata = data.field;
		formdata.thingid=datathingid;
		console.log(formdata);
		$.ajax({
			url : "/workflow/incidentManager/incidentthingok",
			type : "post",
			data : formdata,
			success : function(data) {
				if(data.success){
					// 渲染表格
					ontableRender();
				}else{
					layer.msg(data.message);
				}
			}
		});
		// 重置表单
		$("#formI2")[0].reset();
		$("#formI")[0].reset();
		// 关闭模态框
		layer.close(layerEdit);
		layer.close(layerAdd);
		return false;
	});
	// 添加签名提交
	form.on('submit(sign1)', function(data) {
		formdata = data.field;
		console.log(formdata);
		$.ajax({
			url : "/workflow/thingManager/inserthing",
			type : "post",
			data : formdata,
			success : function(data) {
				if(data.success){
					openlayer4(data.data);
				}else{
					layer.msg(data.message);
				}
			}
		});
		// 重置表单
		$("#formI")[0].reset();
		// 关闭模态框
		layer.close(layerAdd);
		return false;
	});
	// 下一步签名提交
	form.on('submit(sign2)', function(data) {
		formdata = data.field;
		formdata.thingid=datathingid;
		console.log(formdata);
		$.ajax({
			url : "/workflow/incidentManager/incidentthing",
			type : "post",
			data : formdata,
			success : function(data) {
				if(data.success){
					openlayer4(data.data);
				}else{
					layer.msg(data.message);
				}
				//跳转到签名地址window.location.href=
			}
		});
		// 重置表单
		$("#formI2")[0].reset();
		// 关闭模态框
		layer.close(layerEdit);
		return false; // 阻止表单跳转
	});
	
	form.on('select(modelNext)', function(data){
		//显示所有
        var content = $(data.elem).find('option:selected').data('content');
        $('#content').val(content);
	});
	
	form.on('select(statusNext)', function(data){
		console.log(data.value); //得到被选中的值
		//显示所有
        var status = data.value;
        //$("#unitb2").empty();
        vs(status);
	});
	form.on('select(typeidNext)', function(data){
		//console.log(data.elem); //得到select原始DOM对象
		//console.log(data.value); //得到被选中的值
		//console.log(data.othis); //得到美化后的DOM对象
		//显示所有
		$("#binfor").show();
		$("#sendunitlabel").text("交件社区");
		$("#unita").empty();
		$("#unitb2").empty();
		$("#qunPhone").attr("lay-verify","required|phone");
		$("#qunName").attr("lay-verify","required");
		$("#dealunitlable").text("办理部门");
		unittype=1;
		unittypeac=2;
		var typeid = data.value;
		if(typeid==2){
			$("#binfor").hide();
			$("#qunPhone").removeAttr("lay-verify");
			$("#qunName").removeAttr("lay-verify");
			$("#dealunitlable").text("接件部门");
		}
		if(typeid==3){
        	$("#binfor").hide();
        	$("#qunPhone").removeAttr("lay-verify");
			$("#qunName").removeAttr("lay-verify");
        	$("#sendunitlabel").text("交件部门");
        	$("#dealunitlable").text("接件社区");
        	unittype=2;
        	unittypeac=1;
        	getunitlist(2,"#unita");
        	getunitlist(1,"#unitb2");
        	
        }else{
        	getunitlist(1,"#unita");
        	getunitlist(2,"#unitb2");
        }
        form.render();
	});

	
	function vs(status){
		$("div[vs]").show();//sendd
		$("#butSubmit4").hide();
		$("#sign2").show();
		
		$("#sendpinput").attr("lay-verify","required");
		$("#date3").attr("lay-verify","required");
		$("#reasondinput").attr("lay-verify","required");
		
		$("#sendplabledate").text("中转时间");
    	//$("#accpetplabel").text("中转部门交件人");
    	$("#sendplable").text("办理部门交件人");
    	
    	$("#banjie").hide();
    	$("input[name='acceptname']").removeAttr("lay-verify");
    	
    	
		
		if(status==9){
			//getunitlist(1,"#unitb2");
			$("#dealtime").hide();
        	$("#date3").removeAttr("lay-verify");
        	//$("#accpetplabel").text("接件村接件人");
        	//$("#dealunitlable").text("接件村");
			
		}else {if (ltypeid==2&&status== 2) {  
        	$("#dealtime").hide();
        	$("#date3").removeAttr("lay-verify");
        	
        	//$("#accpetplabel").text("接件部门接件人");
        	//$("#dealunitlable").text("接件部门");
        } else if (status ==3 ) {  
        	$("#dealtime").hide();
        	//$("#dealunit").hide();
        	$("#sendp").hide();
        	
        	$("#sendpinput").removeAttr("lay-verify");
        	$("#date3").removeAttr("lay-verify");
        	
        	$("#sendplabledate").text("办结时间");
        	
        	$("#butSubmit4").show();
    		$("#sign2").hide();
        	
        	$("#banjie").show();
        	$("input[name='acceptname']").attr("lay-verify","required");
        	//$("#accpetplabel").text("办结人");
        }  else if (status == 4) {  
        	//$("#dealunit").hide();
        	$("#dealtime").hide();
        	$("#date3").removeAttr("lay-verify");
        	
        	$("#sendplabledate").text("返件时间");
        	//$("#accpetplabel").text("中转部门接件人");
        	$("#sendplable").text("办理部门返件人");
        } else if(status == 5||status == 7) {
        	//$("#dealunit").hide();
        	$("#dealtime").hide();
        	$("#date3").removeAttr("lay-verify");
        	
        	$("#sendplabledate").text("中转时间");
        	//$("#accpetplabel").text("社区接件人");
        	$("#sendplable").text("中转部门返件人");
        }
		//getunitlist(2,"#unitb2");
		}
        if(status == 6){
        	//$("#dealunit").hide();
        	$("#dealtime").hide();
        	$("#date3").removeAttr("lay-verify");
        	
        	$("#sendplabledate").text("退件时间");
        	//$("#accpetplabel").text("中转部门接件人");
        	$("#sendplable").text("办理部门退件人");
        }else{
        	$("#reasond").hide();
        	$("#reasondinput").removeAttr("lay-verify");
        }
        
        form.render();
	}
	
	// 监听工具条
	table.on('tool(demo)', function(obj) { // 注：tool是工具条事件名
		var data = obj.data; // 获得当前行数据
		var layEvent = obj.event; // 获得 lay-event 对应的值（也可以是表头的 event 参数对应的值）
		// var tr = obj.tr; // 获得当前行 tr 的DOM对象
		if (layEvent === 'edit') {
			ltypeid=data.typeid;
			datathingid=data.thingid;
			//查询下一步接口
			$.ajax({
				url : "/workflow/incidentManager/incidentselectstatus",
				type : "get",
				data : {thingid: data.thingid},
				success : function(data) {
					if(data.success){
						data.data.forEach(function(value,index){
							var str="";
							if(value==2){
								str="部门已接件";
							}else if(value==3){
								str="部门已办结";
							}else if(value==4){
								str="部门已返件";
							}else if(value==5){
								str="返件已完成";
							}else if(value==6){
								str="部门已退件";
							}else if(value==7){
								str="退件已完成";
							}else if(value==9){
								str="社区已接件";
							}
							$("#statusNext").append("<option value='"+value+"'>" +str+"</option>");
						});
						if(data.data.length!=0){
							var status=$("#statusNext").val();
							//$("#unitb2").empty();
							vs(status);
							form.render();
							layerEdit = openlayer2();
						}else{
							layer.msg("请求状态不正确，请刷新！");
						}
					}else{
						layer.msg(data.message);
					}
				}
			});
		}
		if (layEvent === 'del') {
			layer.confirm('确定要删除吗?', {
				icon : 3,
				title : '删除'
			}, function(index) {
				// 删除请求
				$.ajax({
					url : "/workflow/thingManager/deletethingthis",
					type : "get",
					data : {
						'thingid' : data.thingid
					},
					success : function(data) {
						layer.msg("删除成功！");
						ontableRender();
					}
				});
				layer.close(index);
			});
		}
		
		if (layEvent === 'node') {//发送短信
			layerNode = openlayer3(data.bphone,data.thingid);
		}
		
		if (layEvent === 'receive') {//发送短信
			layerReceive = openlayer5(data.bphone,data.thingid);
		}
		if(layEvent=='history'){
			openlayer6(data.thingid);
		}

	});
	$('#addbut').on('click', function() {
		layerAdd = openlayer();
	});
	// 搜索
	$("#searchB").on('click', function() {
		ontableRender();
	});
	// 键盘监听
	$(window).keypress(function(event) {
		// document.write("你输入的字符是：" + String.fromCharCode(event.which));
// if (event.which == 13) {
// console.log("按下了回车键！");
// var isFocus = $("#searchI").is(":focus");
// if (isFocus) {
//
// ontableRender();
// }
// }
	});
	// 日期
	laydate.render({
	   elem: '#date',
	   type: 'datetime',
	   format: 'yyyy-MM-dd HH:mm'
	});
	laydate.render({
		   elem: '#date2',
		   type: 'datetime',
		   format: 'yyyy-MM-dd HH:mm'
		});
	//日期.二
	laydate.render({
		   elem: '#startDate',
		   type: 'datetime',
		   format: 'yyyy-MM-dd HH:mm'
		});
		laydate.render({
			   elem: '#endDate',
			   type: 'datetime',
			   format: 'yyyy-MM-dd HH:mm'
	});
//	laydate.render({
//		   elem: '#date3',
//		   type: 'datetime',
//		   format: 'yyyy-MM-dd HH:mm'
//		});
	// 部门的添加、删除 formI1
	$("#addunit1").click(function(){
		var name=$("#unitname1").val();
		$.ajax({
			url :"/workflow/untilManager/insertunit",
			type : "post",
			data : {
				name:name,
				type:unittype
			},
			success : function(data) {
				if(data.success){
					layer.msg("添加成功");
					
					$("#unita").append("<option value='"+data.data.unitid+"'>"+data.data.name+"</option>");
					if(unittype==2){
						$("#unitb").append("<option value='"+data.data.unitid+"'>"+data.data.name+"</option>");
					}
					form.render();
				}else{
					layer.msg(data.message);
				}
			}
		});
	});
	$("#addunit2").click(function(){
		var name=$("#unitname2").val();
		console.log(name);
		$.ajax({
			url :"/workflow/untilManager/insertunit",
			type : "post",
			data : {
				name:name,
				type:2
			},
			success : function(data) {
				if(data.success){
					layer.msg("添加成功");
					$("#unitb").append("<option value='"+data.data.unitid+"'>"+data.data.name+"</option>");
					form.render();
				}else{
					layer.msg(data.message);
				}
			}
		});
	});
	// 部门的添加、删除formI1
	$("#deleunit2").click(function(){
		var unitid=$("#unitb").val();
		layer.confirm('确定要删除吗？', {
			  btn: ['确定','取消'] // 按钮
			}, function(index){
				$.ajax({
					url :"/workflow/untilManager/delectunit",
					type : "get",
					data : {unitid:unitid},
					success : function(data) {
						if(data.success){
							layer.msg("删除成功");
							$("option[value='"+unitid+"']").remove();
							form.render();
							layer.close(index);
						}else{
							layer.msg(data.message);
						}
					}
				});
			}, function(index){
				layer.close(index);
			});
	});
	$("#deleunit1").click(function(){
		var unitid=$("#unita").val();
		layer.open({
			 content: '确定要删除吗?',
			  btn: ['确定','取消'] // 按钮
			,yes:function(index){
				$.ajax({
					url :"/workflow/untilManager/delectunit",
					type : "get",
					data : {unitid:unitid},
					success : function(data) {
						if(data.success){
							layer.msg("删除成功");
							$("option[value='"+unitid+"']").remove();
							form.render();
							layer.close(index);
						}else{
							layer.msg(data.message);
						}
					}
				});
			},
			btn2:function(index){
				layer.close(index);
			}
		});
	});
	//下一步unit部门的添加、删除formI2
	$("#addunit2s").click(function(){
		var name=$("#unitname2s").val();
		console.log(name);
		$.ajax({
			url :"/workflow/untilManager/insertunit",
			type : "post",
			data : {
				name:name,
				type:unittypeac
			},
			success : function(data) {
				if(data.success){
					layer.msg("添加成功");
					$("#unitb2").append("<option value='"+data.data.unitid+"'>"+data.data.name+"</option>");
					form.render();
				}else{
					layer.msg(data.message);
				}
			}
		});
	});
	// 
	$("#deleunit2s").click(function(){
		var unitid=$("#unitb2").val();
		layer.confirm('确定要删除吗？', {
			  btn: ['确定','取消'] // 按钮
			}, function(index){
				$.ajax({
					url :"/workflow/untilManager/delectunit",
					type : "get",
					data : {unitid:unitid},
					success : function(data) {
						if(data.success){
							layer.msg("删除成功");
							$("option[value='"+unitid+"']").remove();
							form.render();
							layer.close(index);
						}else{
							layer.msg(data.message);
						}
					}
				});
			}, function(index){
				layer.close(index);
			});
	});
	//根据类型获取unitlist
	function getunitlist(type,id){
		$.ajax({
			url :"/workflow/untilManager/getunitlist",
			type : "get",
			data : {type:type},
			success : function(data) {
				if(data.success){
					$.each(data.data,function(index,em){
						$(""+id+"").append("<option value='"+em.unitid+"'>"+em.name+"</option>");
					});
					form.render();
				}else{
					layer.msg(data.message);
				}
			}
		});
	}

});
